package ro.flashbite.loggers
{
	import ro.flashbite.loggers.targets.ILoggingTarget;
	import ro.flashbite.loggers.ILogger;

	/**
	 * Interface just for developer knowledge purpose; All the function defined here will be static
	 * 
	 * v 1.0
	 * 
	 * @author Adrian Barbu
	 */	
	internal interface ILoggerFactory
	{
		function initialize(maxOutputLevel:uint):void
		
		function setMaxOutputLevel(v:uint):void;	
			
		function getLogger(name:String):ILogger;
		function clearLogger(name:String):Boolean;
		
		function addTarget(logTarget:ILoggingTarget):void;
		function removeTarget(logTarget:ILoggingTarget):void;
		
		function destroy():void;
	}
}